# Maintainer: David Runge <dave@sleepmap.de>

_name=microspec
pkgname=haskell-microspec
pkgver=0.2.1.3
pkgrel=196
pkgdesc="A tiny, property-based (and unit) testing library with minimal dependencies"
arch=('loong64' 'x86_64')
url="https://hackage.haskell.org/package/microspec"
license=('BSD')
depends=('ghc-libs' 'haskell-quickcheck')
makedepends=('ghc')
source=("$pkgname-$pkgver.tar.gz::https://hackage.haskell.org/package/${_name}-${pkgver}/${_name}-${pkgver}.tar.gz")
sha512sums=('39f9fca2541c4e562d8e7b25baa2b0cc7a765ffe98cc3049fcecccd2db879e08026b7709a9d5b62a371285f84a7b341f377a2bc71fcc8de43673adba5757fa99')

prepare() {
  mv -v "${_name}-$pkgver" "$pkgname-$pkgver"
  cd "$pkgname-$pkgver"
}

build() {
  cd "$pkgname-$pkgver"
  runhaskell Setup configure -O \
                             --enable-shared \
                             --enable-executable-dynamic \
                             --disable-library-vanilla \
                             --prefix=/usr \
                             --docdir=/usr/share/doc/$pkgname --datasubdir=$pkgname \
                             --enable-tests \
                             --dynlibdir=/usr/lib \
                             --libsubdir=\$compiler/site-local/\$pkgid --ghc-option=-fllvm
  runhaskell Setup build $MAKEFLAGS
  runhaskell Setup register --gen-script
  runhaskell Setup unregister --gen-script
  sed -i -r -e "s|ghc-pkg.*update[^ ]* |&'--force' |" register.sh
  sed -i -r -e "s|ghc-pkg.*unregister[^ ]* |&'--force' |" unregister.sh
}

check() {
  cd "$pkgname-$pkgver"
  runhaskell Setup test --show-details=direct
}

package() {
  cd "$pkgname-$pkgver"
  runhaskell Setup copy --destdir="${pkgdir}"
  install -vDm 744 register.sh "$pkgdir/usr/share/haskell/register/$pkgname.sh"
  install -vDm 744 unregister.sh "$pkgdir/usr/share/haskell/unregister/$pkgname.sh"
  install -vDm 644 LICENSE -t "${pkgdir}/usr/share/licenses/${pkgname}"
}
